Delphi code for logging on/off a server

LogOnServer/LogOffServer do not require JobNumbers and therefore can be called before a PrintJob is opened.

Calls used
PELogOnServer
PELogOffServer
Code
uses CRDelphi;

procedure LogOnServer;
var
  LogInfo        : PELogOnInfo;
  pDllName       : array[0..255] of Char;
  sServerName,
  sDatabaseName,
  sUserId,
  sPassword
  sDllName       : string;
begin
  LogInfo.StructSize := SizeOf(PELogOnInfo);
  
  sServerName := 'oracleserver';
  sDatabaseName := ''; {not usually req'd for Oracle}
  sUserId := 'SCOTT';
  sPassword := 'tiger';
  sDllName := 'PDSODBC.DLL';  

  {Populate the PELogOnInfo structure}
  StrPCopy(@LogInfo.ServerName, sServerName);
  StrPCopy(@LogInfo.DatabaseName, sDatabaseName);
  StrPCopy(@LogInfo.UserID, sUserId);
  StrPCopy(@LogInfo.Password, sPassword);
  StrPCopy(pDllName, UpperCase(sDllName));

  if not PELogOnServer(pDllName, LogInfo) then
    {Do Error Handler};
end;


procedure LogOffServer;
var
  LogInfo  : PELogOnInfo;
  pDllName : array[0..255] of Char;
begin
  LogInfo.StructSize := SizeOf(PELogOnInfo);

  sServerName := 'oracleserver';
  sDatabaseName := ''; {not usually req'd for Oracle}
  sUserId := 'SCOTT';
  sPassword := 'tiger';
  sDllName := 'PDSODBC.DLL';  

  {Populate the PELogOnInfo structure}
  StrPCopy(@LogInfo.ServerName, sServerName);
  StrPCopy(@LogInfo.DatabaseName, sDatabaseName);
  StrPCopy(@LogInfo.UserID, sUserID);
  StrPCopy(@LogInfo.Password, sPassword);
  StrPCopy(pDllName, sDllName);

  if not PELogOffServer(pDllName, LogInfo) then
    {Do Error Handler};
end;


Seagate Software IMG Holdings, Inc.
http://www.seagatesoftware.com
Support services:
http://support.seagatesoftware.com